package com.sskj.trafficcontrol.util;

/**
 * @author : zhao kuo
 * @date : 2019/2/7 21:38
 * @description :
 */

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;

public class getOpenIdutil {

    //TODO 更换线上的 微信参数
    //线上：appid secret
    public static String appid = "wxe31df0ba7d01a2fc";
    public static String secret = "391add6bbd5d2a45b3bf3f26cb3a47d2";
    public static String template_id =  "3-e2LnDj27x2nvT6MzmfsACaMJAESiZ57sis7Wc4qyI";


    //测试：appid secret
    //public static String appid = "wxb0aacd026a691413";
    //public static  String secret = "b9edcff6ec56992546ff509821039604";


    public static String getopenid(String appid,String code,String secret) throws Exception {
        BufferedReader in = null;
        //appid和secret是开发者分别是小程序ID和小程序密钥，开发者通过微信公众平台-》设置-》开发设置就可以直接获取，
        String url="https://api.weixin.qq.com/sns/jscode2session?appid="
                +appid+"&secret="+secret+"&js_code="+code+"&grant_type=authorization_code";
        try {
            URL weChatUrl = new URL(url);
            // 打开和URL之间的连接
            URLConnection connection = weChatUrl.openConnection();
            // 设置通用的请求属性
            connection.setConnectTimeout(5000);
            connection.setReadTimeout(5000);
            // 建立实际的连接
            connection.connect();
            // 定义 BufferedReader输入流来读取URL的响应
            in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            StringBuffer sb = new StringBuffer();




            String line;
            while ((line = in.readLine()) != null) {
                sb.append(line);
            }
            return sb.toString();
        } catch (Exception e1) {
            throw new RuntimeException(e1);
        }
        // 使用finally块来关闭输入流
	        finally {
            try {
                if (in != null) {
                    in.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
    }

    public static void main(String[] args) throws Exception {
        System.out.println(getOpenIdutil.getopenid("wxb0aacd026a691413",
                "071QqkPz1pOCJb0DIXPz1QDlPz1QqkPh",
                "b9edcff6ec56992546ff509821039604"));
    }
}
